﻿//#include <iostream>
//#include <array>
//using namespace std;
//class A
//{
//public:
//	int _a;
//	int _b;
//	int _c;
//};
//template <class T>
//bool compare(T x, T y) {
//	return x > y;
//}
//int main()
//{
//	array<int, 10> a1;
//	A* x = new A;
//	A* y = new A;
//	A* z = new A;
//	cout << x << endl << y << endl << z << endl;;
//	cout << compare(z, y) << endl;
//	return 0;
//}

//#include <iostream>
//using namespace std;
//class Date
//{
//public:
//	friend ostream& operator<<(ostream& _cout, const Date& d);
//	Date(int year = 1900, int month = 1, int day = 1)
//		: _year(year)
//		, _month(month)
//		, _day(day)
//	{}
//	bool operator<(const Date& d)const
//	{
//		return (_year < d._year) ||
//			(_year == d._year && _month < d._month) ||
//			(_year == d._year && _month == d._month && _day < d._day);
//	}
//	bool operator>(const Date& d)const
//	{
//		return (_year > d._year) ||
//			(_year == d._year && _month > d._month) ||
//			(_year == d._year && _month == d._month && _day > d._day);
//	}
//private:
//	int _year;
//	int _month;
//	int _day;
//};
//ostream& operator<<(ostream& _cout, const Date& d)
//{
//	_cout << d._year << "-" << d._month << "-" << d._day;
//	return _cout;
//}
////函数模板 -- 参数匹配
//template<class T>
//bool Less(T left, T right)
//{
//	return left < right;
//}
//int main()
//{
//	cout << Less(1, 2) << endl; //可以比较，结果正确
//	Date d1(2022, 7, 7);
//	Date d2(2022, 7, 8);
//	cout << Less(d1, d2) << endl; //可以比较，结果正确
//	Date* p1 = &d1;
//	Date* p2 = &d2;
//	cout << Less(p1, p2) << endl; //可以比较，结果错误
//	return 0;
//}